import rclpy
from rclpy.node import Node
from tf2_ros import StaticTransformBroadcaster
# import 发布时间戳模块
from geometry_msgs.msg import TransformStamped

#1,初始化并构造节点对象
rclpy.init()
node = Node('static_transform_broadcaster_node')
#2,构造静态广播发布器
staic_tf_pub=StaticTransformBroadcaster(node)
#3,构造一组TF数据针
tf_msg=TransformStamped()
  #构造时间戳数据
tf_msg.header.stamp=node.get_clock().now().to_msg()
  #设置坐标变换数据
tf_msg.header.frame_id='B'
tf_msg.child_frame_id='C'
tf_msg.transform.translation.x=0.0
tf_msg.transform.translation.y=0.0
tf_msg.transform.translation.z=3.0
tf_msg.transform.rotation.x=1.0
tf_msg.transform.rotation.y=0.0
tf_msg.transform.rotation.z=0.0
tf_msg.transform.rotation.w=0.0
#4,发布TF数据
staic_tf_pub.sendTransform(tf_msg)
#阻塞主线程，等待ROS节点关闭
rclpy.spin(node)
#5,关闭ROS节点
node.destroy_node()
rclpy.shutdown()
